package com.cloudkinto.service.orderrepair;

import com.cloudkinto.entity.OrderRepairDo;
import com.baomidou.mybatisplus.extension.service.IService;

import com.cloudkinto.common.web.PageResult;
import com.cloudkinto.common.web.SingleResult;
import com.cloudkinto.service.dic.vo.dicBusinessItem.DicBusinessNewEntity;
import com.cloudkinto.service.finance.vo.IdAndNameEntity;
import com.cloudkinto.service.orderrepair.vo.*;

import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

/**
 * <p>
 * service接口
 * </p>
 *
 * @author hua
 * @since 2023-06-14
 */
public interface OrderRepairService extends IService<OrderRepairDo> {

    SingleResult addInit();

    void add(OrderRepairAddReq req, Long companyId, Long userId);

    List<Map> repairCategoryInit(Long companyId);

    void addOrUpdateCategory(DicBusinessNewEntity idAndNameEntity);

    SingleResult updateInit(Long id);

    Object update(OrderRepairUpdateReq updateVo, Long userId);

    void deleteSku(DeleteSkuOrComponentReq req, Long userId);

    int delete(Long id, Long userId);

    OrderRepairDetailRes detail(Long id);

    SingleResult pageInit(Long companyId);

    List<Object> getList(Map<String, String> map);

    PageResult getListPage(Map<String, String> map);

    void markConfirm(Long id, Long userId);


    void customerIndicate(CustomerIndicateReq req, Long userId);

    int getUnIndicateCount(Long companyId);

}
